//
//  BaseVC.h
//  CoolJF
//
//  Created by Apple on 2017/2/23.
//  Copyright © 2017年 Ubi. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <Masonry.h>
#import "UIConstantFont.h"
#import "UIConstantColor.h"
#import "UIMacrosConstant.h"

#define BUTTON_DEFAULT_MARGIN  5

@interface BaseVC : UIViewController

@property (nonatomic, strong) UIView *naviBarContentView;

@property (nonatomic, strong) UIView *baseContentView;

@property (nonatomic, strong) UIButton *baseLeftButton;

@property (nonatomic, strong) UIButton *baseRightButton;

@property (nonatomic, strong) UILabel *baseNavigationBarLabel;

@property (nonatomic, strong) UIView *naviBarBottomLine;

/**
 *  设置状态栏风格
 */
@property (nonatomic, assign) UIStatusBarStyle statusStyle;

/**
 *  是否显示自定义导航条,操作自定义导航条就必须设置yes
 */
@property (nonatomic, assign) BOOL isShowCustomBar;

/**
 *  是否显示导航条分割线,默认yes
 */
@property (nonatomic, assign) BOOL isShowBottomLine;


#pragma mark - method

/**
 *  设置导航条标题
 *
 *  @param barTitle 标题
 */
- (void)setBaseNavigationBarTitle:(NSString *)barTitle;
/**
 *  设置导航条字体颜色
 *
 *  @param barColor 字体颜色
 */
- (void)setBaseNavigationBarColor:(UIColor *)barColor;
/**
 *  设置导航条背景色
 *
 *  @param barColor 背景色
 */
- (void)setBaseNavigationBarBackgroundColor:(UIColor *)barColor;
/**
 *  设置导航条分割线显示或者隐藏
 *
 */
- (void)setBaseNavigationBarSeperatLineShow:(BOOL)show;
/**
 *  添加左按钮事件响应
 *
 *  @param selector 事件响应
 */
- (void)addLeftButtonSelector:(SEL)selector;
/**
 *  添加右按钮事件响应
 *
 *  @param selector 事件响应
 */
- (void)addRightButtonSelector:(SEL)selector;

/**
 *  设置左按钮宽度
 *
 *  @param width 左按钮宽度
 */
- (void)updateLeftButtonWidth:(CGFloat)width;
/**
 *  设置右按钮宽度
 *
 *  @param width 右按钮宽度
 */
- (void)updateRightButtonWidth:(CGFloat)width;


/**
 *  设置左按钮图片
 *
 *  @param image 按钮图片
 */
- (void)setLeftButtonImage:(UIImage *)image;
/**
 *  设置左按钮高亮图片
 *
 *  @param image 高亮图片
 */
- (void)setLeftButtonLightImage:(UIImage *)image;
/**
 *  设置右按钮图片
 *
 *  @param image 按钮图片
 */
- (void)setRightButtonImage:(UIImage *)image;
/**
 *  设置右按钮高亮图片
 *
 *  @param image 高亮图片
 */
- (void)setRightButtonLightImage:(UIImage *)image;
/**
 *  设置左按钮文字
 *
 *  @param title 按钮文字
 */
- (void)setLeftButtonTitle:(NSString *)title;

/**
 *  设置右按钮文字
 *
 *  @param title 按钮文字
 */
- (void)setRightButtonTitle:(NSString *)title;
/**
 *  设置右按钮文字-不使能的状态加
 *
 *  @param enableTitle 按钮文字
 */
- (void)setRightButtonEnableTitle:(NSString *)enableTitle;
/**
 *  设置右按钮文字-选中的状态加
 *
 *  @param selecteTitle 按钮文字
 */
- (void)setRightButtonSelectedTitle:(NSString *)selecteTitle;

/**
 *  设置状态栏背景颜色
 */
- (void)setBaseStatusBarBackgroundColor:(UIColor *)color;
@end
